package com.imooc.juc;

/**
 * @Date:2021/10/28/22:40
 * @Description: LambdaExpress 表达式使用
 */

@FunctionalInterface
interface  Foo{
    public int add(int x);

    public default int div(int x,int y){
        return x - y;
    }

    public default int div2(int x,int y){
        return x - y;
    }

    public static int mu1(int x,int y){
        return x - y;
    }

    public static int mu2(int x,int y){
        return x - y;
    }

}

//Java中Lambda表达式的使用
/*
 * 接口里面有且仅有一个方法，
 * 1 拷贝小括号，写死右箭头，落地大括号
 * 2 @FunctionalInterface
 * 3 default
 * 4 static
 */
public class LambdaExpressDemo {

    public static void main(String[] args) {

        Foo foo = null;
        foo= (x) -> {
            return x + x;
        };

        System.out.println("foo = " + foo.add(2));

    }

}
